home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / LANG / C / LIB / UNIXLIB37B / !UnixLib37 / src / signal / c / init < prev    next >
Text File  |  1996-11-09  |  2KB  |  65 lines

  1. /****************************************************************************
  2.  *
  3.  * $Source: /unixb/home/unixlib/source/unixlib37/src/signal/c/RCS/init,v $
  4.  * $Date: 1996/10/30 21:59:00 $
  5.  * $Revision: 1.1 $
  6.  * $State: Rel $
  7.  * $Author: unixlib $
  8.  *
  9.  * $Log: init,v $
  10.  * Revision 1.1  1996/10/30 21:59:00  unixlib
  11.  * Initial revision
  12.  *
  13.  ***************************************************************************/
  14.  
  15. static const char rcs_id[] = "$Id: init,v 1.1 1996/10/30 21:59:00 unixlib Rel $";
  16.  
  17. /* Initialise the UnixLib stack handlers.
  18.    Written by Nick Burrett, 26 August 1996.  */
  19.  
  20. #include <stdlib.h>
  21. #include <signal.h>
  22. #include <unixlib/sigstate.h>
  23. #include <sys/unix.h>
  24. #include <sys/syslib.h>
  25.  
  26. #include <sys/os.h>
  27.  
  28. void
  29. __unixlib_signal_initialise (void)
  30. {
  31.   int x;
  32.  
  33. #ifdef DEBUG
  34.   os_print ("__unixlib_signal_initialise: about to start initialising\n\r");
  35. #endif
  36.   if (!__u)
  37.     {
  38.       os_print ("unixlib: process structure not creating. Terminating\n\r");
  39.       _exit (1);
  40.     }
  41.  
  42.   /* Setup the signal names.  */
  43.   __unixlib_internal_signame_init ();
  44.  
  45.   /* Initialise signal preempters.  */
  46.   for (x = 0; x < NSIG; x++)
  47.     __u->sigpreempt[x] = 0;
  48.  
  49. #ifdef DEBUG
  50.   os_print ("__unixlib_signal_initialise: setting signal handler defaults\n\r");
  51. #endif
  52.   /* Initialise signal handlers.  */
  53.   __unixlib_default_sigaction (&__u->sigstate);
  54.  
  55.   __u->sigstate.currently_handling = 0;
  56.  
  57.   __u->sigstate.signalstack.ss_sp = 0;
  58.   __u->sigstate.signalstack.ss_size = 0;
  59.   __u->sigstate.signalstack.ss_flags = SA_DISABLE;
  60.  
  61. #ifdef DEBUG
  62.   os_print ("__unixlib_signal_initialise: exiting function\n\r");
  63. #endif
  64. }
  65.